List Comprehensions 可以用簡潔的方式創建List
例如
想產生一個List,儲存1*1 1*2 1*3...1*9 2*1 2*2... 9*9 所有數值
一般寫法
#multi.py
m=[]
for x in range(1,10):
for y in range(1,10):
m.append(x*y)
print(m)
List Comprehensions 可以單行解決
#multi.py
m=[x*y for x in range(1,10)for y in range(1,10)]
print(m)
也可以搭配if使用
例如
想產生一個 1~100的序列,排除2的倍數、3的倍數、5的倍數
一般寫法
#multi.py
m=[]
for x in range(1,101):
if x%2!=0 and x%3!=0 and x%5!=0:
m.append(x)
print(m)
List Comprehensions 寫法
#multi.py
m = [x for x in range(1,101)if x%2!=0 and x%3!=0 and x%5!=0]
print(m)